package com.ruoyi.machine.service;

import com.ruoyi.common.core.domain.machine.EmpMachineType;
import com.ruoyi.common.core.domain.machine.EmpDictData;

import java.util.List;

/**
 * 机台类型Service接口
 *
 * @author 黄字添
 * @date 2024-01-09
 */
public interface IEmpMachineTypeService {
    /**
     * 查询机台类型
     *
     * @param ID 机台类型主键
     * @return 机台类型
     */
    public EmpMachineType selectEmpMachineTypeByID(Long ID);

    /**
     * 获取机台类型字典
     * 
     * @return 机台类型字典
     */
    public EmpDictData selectEmpMachineTypeDict();

    /**
     * 查询机台类型列表
     *
     * @param empMachineType 机台类型
     * @return 机台类型集合
     */
    public List<EmpMachineType> selectEmpMachineTypeList(EmpMachineType empMachineType);
    
    /**
     * 查询门店机台类型排序列表
     *
     * @param empMachineType 机台类型
     * @return 机台类型集合
     */
    public List<EmpMachineType> selectEmpMachineTypeSortList(EmpMachineType empMachineType);

    /**
     * 新增机台类型
     *
     * @param empMachineType 机台类型
     * @return 结果
     */
    public int insertEmpMachineType(EmpMachineType empMachineType);

    /**
     * 修改机台类型
     *
     * @param empMachineType 机台类型
     * @return 结果
     */
    public int updateEmpMachineType(EmpMachineType empMachineType);

    /**
     * 批量删除机台类型
     *
     * @param IDs 需要删除的机台类型主键集合
     * @return 结果
     */
    public int deleteEmpMachineTypeByIDs(Long[] IDs);

    /**
     * 删除机台类型信息
     *
     * @param ID 机台类型主键
     * @return 结果
     */
    public int deleteEmpMachineTypeByID(Long ID);

    EmpMachineType selectEmpMachineTypeByType(String empMachineType);

    List<EmpMachineType> selectEmpMachineTypeByIDs(Long[] typeIDs);
}
